package day0108HomeWork;

import org.junit.Test;

public class HomeWork {
	
//	1、请定义一个交通工具(Vehicle)的类，其中有:
//		属性：速度(speed)，体积(size)等等
//		方法：移动(move())，加速speedUp(int speed),减速speedDown(int speed)等等.
//		最后在测试类VehicleTest中的main()中实例化一个交通工具对象，
//		并通过构造方法给它初始化speed,size的值，并且通过get方法打印出来。
//		另外，调用加速，减速的方法对速度进行改变（改变speed的值），改变后的速度值在main()方法中打印出来。
	@Test
	public void Venicletest() {
		
		Vehicle vehicle = new Vehicle(15,20);
		System.out.println(vehicle.getSize());
		System.out.println(vehicle.getSpeed());
		vehicle.speedUp(4);
		System.out.println(vehicle.getSpeed());
		vehicle.speedDown(5);
		System.out.println(vehicle.getSpeed());
	}
	
	
	
//	2、编写Java程序，模拟简单的计算器。
//	定义名为Number的类，其中有两个整型数据成员num1和num2，应声明为私有。
//	编写构造方法，赋予num1和num2初始值，再为该类定义加（add）、减（sub）、乘（multi）、除（div）等公有成员方法，
//	分别对两个成员变量执行加、减、乘、除的运算。
//	在main方法中创建Number类的对象，调用各个方法，并显示计算结果。
	@Test
	public void Numbertest() {
		Number number = new Number(12, 6);
		number.getNum1();
		number.getNum2();
		number.add();
		int result = number.add1();
		System.out.println(result);
		number.div();
		number.multi();
		number.sub();
	}
	
//	3、定义长方形类，含：
//	属性：宽、高（整型）；
//	方法：求周长、面积；
//	构造方法3个：（1）无参——宽、高默认值为1；（2）1个参数——宽、高相等；（3）2个参数——宽、高各为参数值。
//	要求：进行测试计算周长和面积。
	@Test
	public void Rectangletest() {
		Rectangle rectangle =new Rectangle(); //无参
		rectangle.zhouchang();
		rectangle.mianji();
		
		Rectangle rectangle2 = new Rectangle(2);
		rectangle2.zhouchang();
		rectangle2.mianji();
		
		
		Rectangle rectangle3 = new Rectangle(2, 3);
		rectangle3.zhouchang();
		rectangle3.mianji();
	}
	
	
//	4、定义一个点类Point，包含两个成员变量x和y，分别表示x和y坐标，2个构造函数Point()和Point(int x, int y)，
//	以及一个movePoint(int dx, int dy)方法实现点的移动（参数即为移动的大小），移动完成之后直接打印最新的坐标值。
	
	@Test
	public void Pointtest() {
		Point point = new Point(4, 5);
		point.movepoint(1, 2);
		point.getX();
		point.getY();
		System.out.println(point.getX());
		System.out.println(point.getY());
		
		
		
		
	}
}
